/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package controller;

import entitas.Buku;
import entitas.DaftarBuku;
import entitas.DaftarBookingBuku;
import entitas.DaftarUser;
import entitas.BookingBuku;
import entitas.User;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

/**
 *
 * @author Tommy
 */
public class LogicBookingBuku {

    HttpServletRequest request;

    public LogicBookingBuku(HttpServletRequest request) {
        this.request = request;
    }

    /* method untuk melakukan fungsi input buku, yaitu mengambil nilai textfield pada form buku
     * untuk kemudian dimasukkan sebagai nilai untuk membuat baris baru pada tabel buku
     */
    public String inputBookingBuku() {
        BookingBuku bookingbuku = new BookingBuku();
        DaftarBookingBuku db = new DaftarBookingBuku();
        HttpSession session = request.getSession();

        String namaBuku = request.getParameter("pilihbooking");
        String username = request.getParameter("pilihusername");
        String tanggalBooking = request.getParameter("tanggalbooking");
        //String tanggalPengembalian = request.getParameter("tanggal_pengembalian");

        if (namaBuku.equals("") || username.equals("") || tanggalBooking.equals("")
//                || tanggalPengembalian.equals("")
                ) {
            return "errorInputBookingKosong.jsp";
        } else {
            boolean hasilCheck = db.checkBooking(namaBuku);
            if (!hasilCheck) {
                bookingbuku.setNamaBuku(namaBuku);
                bookingbuku.setUsername(username);
                bookingbuku.setTanggalBooking(tanggalBooking);
                //peminjaman.setTanggalPengembalian(tanggalPengembalian);

                db.createBookingBuku(bookingbuku);

                return "userHome.jsp";
            } else {
                //session.setAttribute("error", "Buku sudah dipinjam orang lain");
                return "errorSudahDiBooking.jsp";
            }
        }
    }

    public String lihatBooking() {
        List<BookingBuku> bookingbuku = new ArrayList<BookingBuku>();
        DaftarBookingBuku db = new DaftarBookingBuku();

        bookingbuku = db.getBookingBooks();
        request.setAttribute("bookingbooks", bookingbuku);
        return "daftarBookingBuku.jsp";
    }

    public String lihatBookingUser() {
        List<BookingBuku> bookingbuku = new ArrayList<BookingBuku>();
        DaftarBookingBuku db = new DaftarBookingBuku();

        bookingbuku = db.getBookingBooks();
        request.setAttribute("bookingbooks", bookingbuku);
        return "daftarBookingBukuUser.jsp";
    }

    public void setListBuku() {
        DaftarBuku listBuku = new DaftarBuku();
        HttpSession session = request.getSession();
        List<Buku> list = new ArrayList<Buku>();
        list = listBuku.getBuku();
        session.setAttribute("list_buku", list);
    }

    public void setListUser() {
        DaftarUser listUser = new DaftarUser();
        HttpSession session = request.getSession();
        List<User> list = new ArrayList<User>();
        list = listUser.getUsers();
        session.setAttribute("list_user", list);
    }
}
